package ezy.demo.sdk3rd;
import android.app.Activity;
import android.content.Intent;
import android.databinding.DataBindingUtil;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Toast;
import java.io.File;
import ezy.demo.sdk3rd.databinding.ActivityMainBinding;
import ezy.sdk3rd.social.AuthorizeSDK;
import ezy.sdk3rd.social.PaymentSDK;
import ezy.sdk3rd.social.PlatformConfig;
import ezy.sdk3rd.social.ShareSDK;
import ezy.sdk3rd.social.payment.PaymentVia;
import ezy.sdk3rd.social.sdk.OnCallback;
import ezy.sdk3rd.social.sdk.OnSucceed;
import ezy.sdk3rd.social.share.image.resource.FileResource;
import ezy.sdk3rd.social.share.image.resource.ResIdResource;
import ezy.sdk3rd.social.share.image.resource.UrlResource;
import ezy.sdk3rd.social.share.media.MoImage;
import ezy.sdk3rd.social.share.media.MoMusic;
import ezy.sdk3rd.social.share.media.MoVideo;
import ezy.sdk3rd.social.share.media.MoWeb;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
ActivityMainBinding binding;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
PlatformConfig.useQQ(BuildConfig.APPID_QQ);
PlatformConfig.useWeixin(BuildConfig.APPID_WEIXIN);
PlatformConfig.useWeibo(BuildConfig.APPID_WEIBO, "http://www.sina.com/");
PlatformConfig.usePayments();
ShareSDK.setDefaultCallback(new DefaultCallback("share"));
PaymentSDK.setDefaultCallback(new DefaultCallback("payment"));
AuthorizeSDK.setDefaultCallback(new DefaultCallback("auth"));
binding.setOnShare(this);
binding.setOnAuth(new View.OnClickListener() {
@Override
public void onClick(View v) {
String platform = binding.spAuth.getSelectedItem().toString().toLowerCase();
AuthorizeSDK.authorize(MainActivity.this, platform, new OnSucceed<String>() {
@Override
public void onSucceed(String result) {
Toast.makeText(MainActivity.this, "登陆成功 - " + result, Toast.LENGTH_SHORT).show();
}
});
}
});
binding.setOnPay(new View.OnClickListener() {
@Override
public void onClick(View v) {
String platform = "";
String data = "";
switch (v.getId()) {
case R.id.btn_wxpay:
platform = PaymentVia.Wxpay;
data = binding.txtWxpaydata.getText().toString();
break;
case R.id.btn_alipay:
default:
platform = PaymentVia.Alipay;
data = binding.txtAlipaydata.getText().toString();
break;
}
PaymentSDK.pay(MainActivity.this, platform, data, new OnSucceed<String>() {
@Override
public void onSucceed(String result) {
Toast.makeText(MainActivity.this, "支付成功 - " + result, Toast.LENGTH_SHORT).show();
}
});
}
});
}
@Override
public void onClick(View v) {
FileResource file = new FileResource(new File("/storage/emulated/0/2017_03_23_16_36_07_receipt.jpg"));
UrlResource imageUrl = new UrlResource("https://dn-mhke0kuv.qbox.me/e79942a9b8d8cdbb8dc3.jpg");
ResIdResource resId = new ResIdResource(this, R.mipmap.ic_launcher, true);
String platform = binding.spShare.getSelectedItem().toString().toLowerCase();
OnSucceed onSucceed = new OnSucceed<String>() {
@Override
public void onSucceed(String result) {
Toast.makeText(MainActivity.this, "分享成功", Toast.LENGTH_SHORT).show();
}
};
switch (binding.spType.getSelectedItemPosition()) {
case 0: // web
ShareSDK.make(this, new MoWeb("https://baidu.com")).withTitle("这是标题").withDescription("这是摘要").withThumb(resId).share(platform, onSucceed);
break;
case 1: // text
ShareSDK.make(this, "这是文本~~~").share(platform, onSucceed);
break;
case 2: // image
ShareSDK.make(this, new MoImage(file)).share(platform, onSucceed);
break;
case 3: // text+image
ShareSDK.make(this, "这是文本~~~", new MoImage(file)).share(platform, onSucceed);
break;
case 4: // music
String music = "https://archive.org/download/testmp3testfile/mpthreetest.mp3";
ShareSDK.make(this, new MoMusic(music)).withTitle("这是标题").withDescription("这是摘要").withThumb(resId).share(platform, onSucceed);
break;
case 5: // video
ShareSDK.make(this, new MoVideo("https://archive.org/download/Dokku_obrash/wmv.mp4"))
.withTitle("这是标题")
.withDescription("这是摘要")
.withThumb(resId)
.share(platform, onSucceed);
break;
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
AuthorizeSDK.onHandleResult(this, requestCode, resultCode, data);
ShareSDK.onHandleResult(this, requestCode, resultCode, data);
}
public static class DefaultCallback implements OnCallback {
final String name;
public DefaultCallback(String name) {
this.name = name;
}
@Override
public void onStarted(Activity activity) {
Log.e("ezy", name + " started");
Toast.makeText(activity, name + " started", Toast.LENGTH_LONG).show();
}
@Override
public void onCompleted(Activity activity) {
Log.e("ezy", name + " completed");
Toast.makeText(activity, name + " completed", Toast.LENGTH_LONG).show();
}
@Override
public void onSucceed(Activity activity, Object result) {
Log.e("ezy", name + " succeed");
Toast.makeText(activity, name + " succeed", Toast.LENGTH_LONG).show();
}
@Override
public void onFailed(Activity activity, int code, String message) {
Log.e("ezy", name + " failed [" + code + "]" + message);
Toast.makeText(activity, name + " failed [" + code + "]" + message, Toast.LENGTH_SHORT).show();
}
}
}